استفاده از دستور پرش
از دستور پرش (jump) میتوان برای کنترل لاجیک برنامه استفاده کرد، به طوری که در طول سیکل اسکن، برنامه از روی برخی دستورات پرش کرده و آنها را اجرا نکند. بعلاوه، میتوان دستور حلقه (LOOP) را برای اینکه بخشی از برنامه در یک سیکل اسکن چندبار اجرا شود، استفاده نمود. دستورات پرش به آدرس محل پرش که Label نامیده میشود، نیاز دارند.
پوشه ی دستور جامپ در Program Element
همانطور که در تصویر فوق مشاهده می کنید، برای پرش دو گزینه به نام های (JMP) و (JMPN) وجود دارد. دستور (JMP) با مشاهده ی لبه ی مثبت RLO پرش را به Label خود انجام داده و دستور (JMPN) با مشاهده ی لبه ی منفی RLO پرش را انجام می دهد.
برای اینکه تعیین شود که پرش به سمت جلو انجام شود یا به سمت عقب، باید از Label استفاده نمود. نکاتی که در استفاده از دستورات jump باید مورد نظر قرار گیرد، عبارتند از :
نقطه ای که به آن پرش انجام می گیرد، با Label شروع می شود.
Label نباید از چهار کاراکتر بیشتر باشد.
Label باید با حرف شروع شود، نه با عدد.
پرش به جلو و عقب هر دو امکان پذیر است.
دستور پرش و Label مربوطه هر دو باید در داخل یک بلاک باشند، نه اینکه Label در بلاک دیگری تعریف شده باشد.
نام Label باید در داخل بلاک منحصر بفرد باشد. استفاده از چند Label همنام در یک بلاک مجاز نیست.
دستور پرش برای ایجاد لوپ حتماً باید کنترل شده باشد، زیرا ممکن است برنامه را به یک لوپ بی نهایت ببرد که باعث بروز خطا خواهد بود. به عنوان مثال، در برنامه زیر، اگر I 0.0 = 1 شود، دستور (JMP) فعال شده و محدودیتی برای دفعات پرش وجود ندارد. بنابراین، اگر Label قبل از دستور پرش بوده و ایجاد لوپ کند، برنامه وارد یک لوپ همیشه بسته می شود. در این شرایط CPU نمی تواند در زمان مقرر سیکل اسکن را تمام کرده و سیکل جدید را شروع کند، بنابراین به مد Stop رفته و چراغ SF روشن می شود. این خطا با OB80(Timing Error) قابل مدیریت است.
از دستور پرش (jump) میتوان برای کنترل لاجیک برنامه استفاده کرد، به طوری که در طول سیکل اسکن، برنامه از روی برخی دستورات پرش کرده و آنها را اجرا نکند. بعلاوه، میتوان دستور حلقه (LOOP) را برای اینکه بخشی از برنامه در یک سیکل اسکن چندبار اجرا شود، استفاده نمود. دستورات پرش به آدرس محل پرش که Label نامیده میشود، نیاز دارند.
پوشه ی دستور جامپ در Program Element
همانطور که در تصویر فوق مشاهده می کنید، برای پرش دو گزینه به نام های (JMP) و (JMPN) وجود دارد. دستور (JMP) با مشاهده ی لبه ی مثبت RLO پرش را به Label خود انجام داده و دستور (JMPN) با مشاهده ی لبه ی منفی RLO پرش را انجام می دهد.
برای اینکه تعیین شود که پرش به سمت جلو انجام شود یا به سمت عقب، باید از Label استفاده نمود. نکاتی که در استفاده از دستورات jump باید مورد نظر قرار گیرد، عبارتند از :
نقطه ای که به آن پرش انجام می گیرد، با Label شروع می شود.
Label نباید از چهار کاراکتر بیشتر باشد.
Label باید با حرف شروع شود، نه با عدد.
پرش به جلو و عقب هر دو امکان پذیر است.
دستور پرش و Label مربوطه هر دو باید در داخل یک بلاک باشند، نه اینکه Label در بلاک دیگری تعریف شده باشد.
نام Label باید در داخل بلاک منحصر بفرد باشد. استفاده از چند Label همنام در یک بلاک مجاز نیست.
دستور پرش برای ایجاد لوپ حتماً باید کنترل شده باشد، زیرا ممکن است برنامه را به یک لوپ بی نهایت ببرد که باعث بروز خطا خواهد بود. به عنوان مثال، در برنامه زیر، اگر I 0.0 = 1 شود، دستور (JMP) فعال شده و محدودیتی برای دفعات پرش وجود ندارد. بنابراین، اگر Label قبل از دستور پرش بوده و ایجاد لوپ کند، برنامه وارد یک لوپ همیشه بسته می شود. در این شرایط CPU نمی تواند در زمان مقرر سیکل اسکن را تمام کرده و سیکل جدید را شروع کند، بنابراین به مد Stop رفته و چراغ SF روشن می شود. این خطا با OB80(Timing Error) قابل مدیریت است.